from django.contrib.auth.models import AbstractUser
from django.db import models


# Create your models here.
class User(AbstractUser):
    # 用户默认头像
    head_img = models.ImageField(
        default='/static/user_img/head_img.jpg',
        # 储存用户上传头像地址
        upload_to='user_img/',
        # 表单验证可以为空
        blank=True,
        # 数据库中可以为null
        null=True,
        verbose_name='用户头像'
    )

    phone = models.CharField(
        max_length=11,
        unique=True,
        blank=True,
        null=True,
        verbose_name='用户电话'
    )

    email = models.EmailField(
        verbose_name='用户邮箱',
        blank=True,
        null=True,
    )

    nikename = models.CharField(
        max_length=11,
        blank=True,  # 表单验证允许为空
        null=False,  # 数据库存储空字符串而不是NULL
        default='',  # 明确设置默认值为空字符串
        verbose_name='用户昵称'
    )

    profile = models.CharField(
        max_length=500,
        blank=True,
        default='这个人很懒，什么都没有写～',
        verbose_name='个人简介'
    )

    class Meta:
        verbose_name = '用户'
        verbose_name_plural = '用户'

    def __str__(self):
        return self.username